﻿using Apps.Models;
using Apps.Models.CustomModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Apps.IBLL.SelfRcRelated
{
    public partial interface ISelfRcRelatedBLL
    {

        /// <summary>
        /// 获取自采煤相关信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        TestDataOutPutModel GetSelfSampingInfo(TestDataQuertParaModel model);

        /// <summary>
        ///入厂关联自采
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool RelaterdData(TestDataOutPutModel model);

        /// <summary>
        ///取消入厂关联自采
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool UnRelaterdData(TestDataOutPutModel model);


        /// <summary>
        ///设置为结算状态
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool JieSuanData(TestDataOutPutModel model);

        /// <summary>
        ///取消结算状态
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool UnJieSuanData(TestDataOutPutModel model);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        SELF_SAMPLING_RC_RELATED Info(string batchCode, string type = "");

        /// <summary>
        /// 判断是否已经存在
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool Any(string selfBacthCode, string rcBatchCode);

        V_LMS_RESULT TestDataInfo(string testCode);

        /// <summary>
        /// 获取入厂批次列表
        /// </summary>
        /// <param name="model"></param>
        /// <param name="totalCount"></param>
        /// <returns></returns>
        List<RcBatchModel> GetRcBatchList(TestDataQuertParaModel model, ref int totalCount);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool Add(SELF_SAMPLING_RC_RELATED model);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        bool Update(SELF_SAMPLING_RC_RELATED model);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool Delete(string id);

        List<TestDataCokeOutPutModel> GetCokeList(TestDataCokeParaModel model, ref int totalCount, bool isPage = true);
    }
}
